package com.content.Mapper.artist;

import com.content.Entity.artist.Artist;
import com.content.Entity.artist.ArtistFeatures;
import com.content.Entity.artist.ArtistHistory;
import com.content.Entity.artist.ArtistWork;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;

import java.util.List;

@Mapper
public interface ArtistMapper {
    List<Artist> getArtistList(@Param("artistName") String artistName, @Param("categoryId") String categoryId, @Param("schoolId") String schoolId);

    void addArtist(Artist artist);

    void addArtistWork(ArtistWork artistWork);

    void addArtistFeatures(ArtistFeatures artistFeatures);

    void addArtistHistory(ArtistHistory artistHistory);

    List<ArtistWork> getArtistWorks(String artistId);

    List<ArtistFeatures> getArtistFeatures(String artistId);

    List<ArtistHistory> getArtistHistories(String artistId);

    void deleteArtistWork(String artistId);

    void deleteArtistFeatures(String artistId);

    void deleteArtistHistory(String artistId);

    void deleteArtist(String artistId);

    void updateArtist(Artist artist);

    List<Artist> getArtists();

    List<Artist> getArtistsByCategoryId(String categoryId);

    Artist getArtistById(String artistId);
}
